home *** CD-ROM | disk | FTP | other *** search
- function initialize_page()
- {
- //figure next and previous page URLs
-
- //DO NEXT PAGE
- //get page type for course
- var tmp_page_type = API_WIN.PAGE_TYPE;
- //convert next page num into padded str
- var tmp_page_str = convert_num_to_str(PAGE_NUM + 1);
- if (API_WIN.RUN_REVIEW) {
- tmp_page_str = convert_num_to_str(parseFloat(parse_string(REVIEW_PAGES,",",PAGE_NUM + 1)));
- }
- tmp_page_type = API_WIN.get_page_type(tmp_page_str,tmp_page_type,LIST_FLASH_PAGES,LIST_HTML_PAGES);
- NEXT_PAGE = PATH_EXT + API_WIN.get_content_url(tmp_page_str,tmp_page_type);
-
- //DO PREVIOUS PAGE
- //get page type for course
- tmp_page_type = API_WIN.PAGE_TYPE;
- //convert prev page num into padded str
- tmp_page_str = convert_num_to_str(PAGE_NUM - 1);
- if (API_WIN.RUN_REVIEW) {
- tmp_page_str = convert_num_to_str(parseFloat(parse_string(REVIEW_PAGES,",",PAGE_NUM - 1)));
- }
- tmp_page_type = API_WIN.get_page_type(tmp_page_str,tmp_page_type,LIST_FLASH_PAGES,LIST_HTML_PAGES);
- PREV_PAGE = PATH_EXT + API_WIN.get_content_url(tmp_page_str,tmp_page_type);
-
- if (PAGE_NUM == 1) {
- PREV_PAGE = "close";
- DISABLE_PREV = true;
- }
- if (PAGE_NUM == MAX_PAGE_NUM) {
- NEXT_PAGE = "close";
- if (AUTO_COMPLETION)
- SCO_STATUS = "c";
- }
- }
-
- function start_page()
- {
- if (RUNNING_QUEST) {
- DISABLE_PREV = true;
- DISABLE_NEXT = true;
- }
- /*
- if (!RUN_508) {
- if (DISABLE_NEXT)
- document.NEXT.src = NEXT_DE.src;
- else
- document.NEXT.src = NEXT_DEF.src;
-
- if (DISABLE_PREV)
- document.PREVIOUS.src = PREVIOUS_DE.src;
- else
- document.PREVIOUS.src = PREVIOUS_DEF.src;
- }
- */
- LOAD_DONE = true;
-
- if ((ENABLE_AUDIO) && (PAGE_TYPE == "flash")) {
- if ("undefined" != typeof document.flashplayer.focus) {
- document.flashplayer.focus();
- }
- }
-
- //show audio narrative
- show_audio();
-
- //send bookmark, if not running question or review
- if ((!API_WIN.RUN_REVIEW) && (!RUNNING_QUEST))
- API_WIN.set_sco_status(PAGE_NUM,SCO_STATUS);
-
- //make sure window is right size if in a frame
- if (API_WIN.WIN_TYPE == "frame") {
- API_WIN.resize_window(window,window.parent);
- }
- }
-
- function replay_page()
- {
- window.location.reload();
- }
-
- function exit_page()
- {
- API_WIN.close_child_windows("exit_page");
- }
-
- function goto_page(page,direction)
- {
- if ((DISABLE_NEXT == true && direction == "next") || (DISABLE_PREV == true && direction == "previous")) {
- //nothing
- //alert("You can not continue at this point. Please try a different option.");
- }
- else {
- if (page == "close") {
- if (API_WIN.WIN_TYPE == "new_window")
- window.close();
- if (API_WIN.WIN_TYPE == "current_window")
- goto_menu();
- if (API_WIN.WIN_TYPE == "frame") {
- API_WIN.sco_finish();
- window.location.href="about:blank";
- }
- }
- else {
- if (page != "")
- window.location.href = page;
- }
- }
- }
-
- function goto_next_page()
- {
- //going to course page or question page?
- if ((RUN_QUEST) || (RUNNING_QUEST)) {
- //are we already in a question?
- if (RUNNING_QUEST) {
- goto_next_question();
- }
- else {
- //increment opener PAGE_NUM
- goto_page("questions/start.htm","");
- }
- }
- else {
- if (!DISABLE_NEXT) {
- //increment opener PAGE_NUM or REVIEW_PAGE_NUM
- if (API_WIN.RUN_REVIEW)
- opener.REVIEW_PAGE_NUM += 1;
- else
- API_WIN.PAGE_NUM += 1;
- goto_page(NEXT_PAGE,'next');
- }
- }
- }
-
- function goto_prev_page()
- {
- //are we running a question? if so previous not allowed
- if ((!RUNNING_QUEST) && (!DISABLE_PREV)) {
- //decrement opener PAGE_NUM or REVIEW_PAGE_NUM
- if (API_WIN.RUN_REVIEW)
- opener.REVIEW_PAGE_NUM -= 1;
- else
- API_WIN.PAGE_NUM -= 1;
- goto_page(PREV_PAGE,'previous');
- }
- }
-
- function goto_menu()
- {
- if ((API_WIN.FILE_LMS) || (API_WIN.RUN_TYPE == "flms"))
- API_WIN.flms_sco_finish('../menu.htm');
- else
- window.close();
- }
-
- function goto_spec_page(page_num,force_nav_rules)
- {
- if (!isNaN(page_num)) {
- if (API_WIN.RUN_REVIEW) {
- alert("This functionality is not supported in the Review Mode.");
- }
- else {
- page_num = parseFloat(page_num);
- if ((page_num >= 1) && (page_num <= MAX_PAGE_NUM)) {
- var page_str = convert_num_to_str(page_num);
- var page_type = API_WIN.get_page_type(page_str,API_WIN.PAGE_TYPE,LIST_FLASH_PAGES,LIST_HTML_PAGES);
- var page_url = PATH_EXT + API_WIN.get_content_url(page_str,page_type);
- if (force_nav_rules) {
- if ((page_num > PAGE_NUM) && (!DISABLE_NEXT)) {
- API_WIN.PAGE_NUM = page_num;
- goto_page(page_url,"");
- }
- if ((page_num < PAGE_NUM) && (!DISABLE_PREV)) {
- API_WIN.PAGE_NUM = page_num;
- goto_page(page_url,"");
- }
- }
- else {
- API_WIN.PAGE_NUM = page_num;
- goto_page(page_url,"");
- }
- }
- }
- }
- }
-
- function enable_next(bln_temp)
- {
- DISABLE_NEXT = !bln_temp;
- if (document.NEXT) {
- if (DISABLE_NEXT) {
- document.NEXT.src = NEXT_DE.src;
- }
- else {
- document.NEXT.src = NEXT_DEF.src;
- }
- if (ORIG_IMG) {
- if (ORIG_IMG.name == "NEXT") {
- ORIG_IMG.src = document.NEXT.src;
- }
- }
- }
- }
-
- function enable_previous(bln_temp)
- {
- DISABLE_PREV = !bln_temp;
- if (document.PREVIOUS) {
- if (DISABLE_PREV) {
- document.PREVIOUS.src = PREVIOUS_DE.src;
- }
- else {
- document.PREVIOUS.src = PREVIOUS_DEF.src;
- }
- if (ORIG_IMG) {
- if (ORIG_IMG.name == "PREVIOUS") {
- ORIG_IMG.src = document.PREVIOUS.src;
- }
- }
- }
- }
-
- function set_status(sub_sco,status)
- {
- API_WIN.flms_set_sco_status(API_WIN.flms_get_cur_sco(),sub_sco,status);
- }
-
- function set_location(sub_sco,location)
- {
- API_WIN.flms_set_sco_loc(API_WIN.flms_get_cur_sco(),sub_sco,location);
- }
-
- function flash_next()
- {
- if (!DISABLE_NEXT)
- FN_TIMER = setInterval("hacked_fn();",1000);
- }
-
- function hacked_fn()
- {
- if (FN_TIMER != "")
- clearInterval(FN_TIMER);
- document.NEXT.src = NEXT_FLASH.src;
- }
-
- function open_review(review_pages)
- {
- if (API_WIN.RUN_REVIEW) {
- alert("This functionality is not supported in the Review Mode.");
- }
- else {
- //set REVIEW_PAGES
- API_WIN.RUN_REVIEW = true;
- REVIEW_PAGES = review_pages;
- REVIEW_PAGE_NUM = 1;
- REVIEW_PAGE = parseFloat(parse_string(REVIEW_PAGES,",",PAGE_NUM));
- if (REVIEW_PAGE > 0) {
- var tmp_page_str = convert_num_to_str(REVIEW_PAGE);
- var tmp_page_type = API_WIN.get_page_type(tmp_page_str,API_WIN.PAGE_TYPE,LIST_FLASH_PAGES,LIST_HTML_PAGES);
- var tmp_page_url = PATH_EXT + API_WIN.get_content_url(tmp_page_str,tmp_page_type);
- API_WIN.RV_WIN=open(tmp_page_url,"REVIEWWIN","location=no,scrollbars=no,resizeable=no,width=" + MEDIA_WIDTH + ",height=" + (parseInt(MEDIA_HEIGHT) + parseInt(RV_WIN_OFFSET)) + ",toolbar=no,directories=no,menubar=no,status=yes,");
- API_WIN.RV_WIN.focus();
- }
- }
- }
-
- function open_popup(page_url,left,top,width,height,scroll,resize,menu)
- {
- API_WIN.open_popup(page_url,left,top,width,height,scroll,resize,menu);
- }
-
- function open_glossary(term)
- {
- API_WIN.open_glossary(term);
- }
-
- function open_prefs()
- {
- API_WIN.open_prefs();
- }
-
- function open_refs()
- {
- API_WIN.open_refs();
- }
-
- function open_help()
- {
- //API_WIN.open_help();
- alert("Help is not available yet.");
- }
-
- function open_map()
- {
- API_WIN.flms_sco_finish('../map.htm');
- }
-
- function show_audio()
- {
- if (SHOW_AUDIO) {
- if (PAGE_NUM > 0)
- API_WIN.open_audio_win(API_WIN.get_audio_url(PAGE_STR));
- }
- else if (API_WIN.AUDIO_WIN != null) {
- API_WIN.AUDIO_WIN.close();
- API_WIN.AUDIO_WIN = null;
- }
- }
-
- function toggle_audio()
- {
- if (SHOW_AUDIO) {
- document.AUDIO.src = AUDIO_OFF.src;
- set_cookie_value('showaudio','0');
- opener.SHOW_AUDIO = false;
- SHOW_AUDIO = false;
- }
- else {
- document.AUDIO.src = AUDIO_ON.src;
- set_cookie_value('showaudio','1');
- opener.SHOW_AUDIO = true;
- SHOW_AUDIO = true;
- }
- show_audio();
- }
-
- function switch_lang()
- {
- var tmp_iso_lang = "en";
- if (ISO_LANG == "en")
- tmp_iso_lang = "es";
-
- //set it in API window
- API_WIN.set_lang(tmp_iso_lang);
-
- replay_page();
- }
-
- function goto_next_question()
- {
- //make sure questions are there
- if (MAX_QUEST_NUM == 0) {
- //problem
- alert("This Quiz has not been setup correctly. Contact your system administrator.");
- }
- else {
- //if asked all questions, go back to next page in course
- if (QUEST_NUM >= MAX_QUEST_NUM) {
- RUN_QUEST = false;
- RUNNING_QUEST = false;
- goto_next_page();
- }
- else {
- //show next question
- var quest_id = 0;
- var rand_num = 0;
- var quest_list = QUEST_LIST;
- var search_str = ",";
- while (quest_list.indexOf(search_str,0) > -1) {
- //get a random question id
- rand_num = Math.random();
- quest_id = Math.round(rand_num*(QUEST_POOL_NUM-1)) + 1;
- search_str = "," + quest_id + ",";
- }
- //add question to quest list
- API_WIN.QUEST_LIST = quest_list + quest_id + ",";
- //incement question number
- API_WIN.QUEST_NUM += 1;
- //go to next question
- goto_page("question" + convert_num_to_str(quest_id) + ".htm","next");
- }
- }
- }
-
-
- //quiz stuff - test version, provides feedback and moves to next page
- function check_answer_test(answer_obj)
- {
- var ans_list = ANSWER_LIST;
- var quest_id = PAGE_NUM;
- if (QUEST_NUM > 0)
- quest_id = QUEST_ID;
- var search_str = "," + quest_id + ",";
- if ((ans_list == "") || (ans_list.indexOf(search_str,0) == -1))
- {
- opener.ANSWER_LIST = ans_list + quest_id + ",";
- var correct_ans_value = correct_ans(answer_obj,quest_id);
- var correct_ans_obj = eval("document.form1." + correct_ans_value);
- if ((correct_ans_value != "") && (answer_obj.name == correct_ans_value)) {
- //increment correct_answer counter
- opener.CORRECT_ANSWERS += 1;
- do_feedback(correct_ans_obj,true,false);
- }
- else
- do_feedback(correct_ans_obj,false,false);
- }
- else
- alert ("You've already answered this question!");
-
- //navigate to next question
- DISABLE_NEXT = false;
- goto_next_page();
- }
-
- //quiz stuff - quiz version, provides feedback, if correct moves to next page
- function check_answer_quiz(answer_obj)
- {
- var correct_ans_value = correct_ans(answer_obj,QUEST_ID);
- var correct_ans_obj = eval("document.form1." + correct_ans_value);
- if ((correct_ans_value != "") && (answer_obj.name == correct_ans_value)) {
- do_feedback(correct_ans_obj,true,true);
- DISABLE_NEXT = false;
- goto_next_page();
- }
- else {
- do_feedback(correct_ans_obj,false,true);
- answer_obj.checked = false;
- }
- }
-
- function do_feedback(correct_ans_obj,correct,use_default)
- {
- if (SHOW_FEEDBACK) {
- if (correct) {
- alert(CORRECT_FEEDBACK);
- }
- else {
- var incorrect_feedback = INCORRECT_FEEDBACK;
- if (!use_default)
- incorrect_feedback = "Incorrect. The correct answer is: '" + correct_ans_obj.value + "'";
- alert(incorrect_feedback);
- }
- }
- }
-
- function correct_ans(answer_obj,quest_id)
- {
- var correct_ans = "";
- var correct_ans_num = Math.floor(((1 / (EXT_VALUE / 1000000)) / 3) / quest_id);
- switch (correct_ans_num)
- {
- case 1:
- correct_ans = "A";
- break;
- case 2:
- correct_ans = "B";
- break;
- case 3:
- correct_ans = "C";
- break;
- case 4:
- correct_ans = "D";
- break;
- case 5:
- correct_ans = "E";
- break;
- }
-
- return correct_ans;
- }
-
- function write_media()
- {
- if (ENABLE_AUDIO) {
- document.write(MEDIA_HTML);
- }
- }
-
- function flash_command(command_str)
- {
- eval(command_str);
- }
-
- function goto_sco(tmp_sco,tmp_folder)
- {
- if ((API_WIN.FILE_LMS) || (API_WIN.RUN_TYPE == "flms"))
- API_WIN.flms_sco_finish("../" + tmp_folder + "/start.htm?filelms=1&sco=" + tmp_sco);
- }
-
-
-